package com.bwie.controller;

import com.bwie.pojo.ProdInfo;
import com.bwie.service.ProdInfoService;
import com.bwie.service.impl.ProdInfoServiceImpl;
import com.bwie.utils.R;
import com.bwie.vo.PageInfoVo;
import org.springframework.web.bind.annotation.*;

import org.springframework.beans.factory.annotation.Autowired;

/**
 * 商品信息表(tb_prod_info)表控制层
 *
 * @author xxxxx
 */
@RestController
@RequestMapping("/product/product")
public class ProdInfoController {
    /**
     * 服务对象
     */
    @Autowired
    private ProdInfoService prodInfoService;


    /**
     * @author: 鑫仔
     * @description: 商品信息列表
     * @params: []
     * @return: com.bwie.utils.R
     * @date: 2025/7/25 8:48
     */
    @PostMapping("prodInfoList")
    public R prodInfoList() {
        return prodInfoService.prodInfoList();
    }

    /**
     * @author: 鑫仔
     * @description: 商品信息
     * @params: [com.bwie.vo.PageInfoVo]
     * @return: com.bwie.utils.R
     * @date: 2025/7/25 19:56
     */
    @PostMapping("getProdInfoList")
    public R getProdInfoList(
            @RequestBody PageInfoVo pageInfoVo
    ) {
        return prodInfoService.getProdInfoList(pageInfoVo);
    }

    /**
     * @author: 鑫仔
     * @description: 添加商品信息
     * @params: [com.bwie.pojo.ProdInfo]
     * @return: com.bwie.utils.R
     * @date: 2025/7/25 19:58
     */
    @PostMapping("addProdInfo")
    public R addProdInfo(
            @RequestBody ProdInfo prodInfo
    ) {
        return prodInfoService.addProdInfo(prodInfo);
    }

    /**
     * @author: 鑫仔
     * @description: 修改商品信息
     * @params: [com.bwie.pojo.ProdInfo]
     * @return: com.bwie.utils.R
     * @date: 2025/7/26 8:27
     */
    @PostMapping("updateProdInfo")
    public R updateProdInfo(
            @RequestBody ProdInfo prodInfo
    ) {
        return prodInfoService.updateProdInfo(prodInfo);
    }

    /**
     * @author: 鑫仔
     * @description: 删除商品信息
     * @params: [com.bwie.pojo.ProdInfo]
     * @return: com.bwie.utils.R
     * @date: 2025/7/26 8:27
     */
    @PostMapping("deleteProdInfo")
    public R deleteProdInfo(
            @RequestBody ProdInfo prodInfo
    ) {
        return prodInfoService.deleteProdInfo(prodInfo);
    }

}
